/**
 * Copyright (c) 2000-2011 Liferay, Inc. All rights reserved.
 *
 * This library is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Lesser General Public License as published by the Free
 * Software Foundation; either version 2.1 of the License, or (at your option)
 * any later version.
 *
 * This library is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
 * details.
 */

package com.crossriver.crgis.database.service.persistence;

import com.crossriver.crgis.database.model.Bank_Payment_Slip;

import com.liferay.portal.service.persistence.BasePersistence;

/**
 * The persistence interface for the bank_ payment_ slip service.
 *
 * <p>
 * Never modify or reference this interface directly. Always use {@link Bank_Payment_SlipUtil} to access the bank_ payment_ slip persistence. Modify <code>service.xml</code> and rerun ServiceBuilder to regenerate this interface.
 * </p>
 *
 * <p>
 * Caching information and settings can be found in <code>portal.properties</code>
 * </p>
 *
 * @author Wole Adetiba
 * @see Bank_Payment_SlipPersistenceImpl
 * @see Bank_Payment_SlipUtil
 * @generated
 */
public interface Bank_Payment_SlipPersistence extends BasePersistence<Bank_Payment_Slip> {
	/**
	* Caches the bank_ payment_ slip in the entity cache if it is enabled.
	*
	* @param bank_Payment_Slip the bank_ payment_ slip to cache
	*/
	public void cacheResult(
		com.crossriver.crgis.database.model.Bank_Payment_Slip bank_Payment_Slip);

	/**
	* Caches the bank_ payment_ slips in the entity cache if it is enabled.
	*
	* @param bank_Payment_Slips the bank_ payment_ slips to cache
	*/
	public void cacheResult(
		java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> bank_Payment_Slips);

	/**
	* Creates a new bank_ payment_ slip with the primary key. Does not add the bank_ payment_ slip to the database.
	*
	* @param depSlipNo the primary key for the new bank_ payment_ slip
	* @return the new bank_ payment_ slip
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip create(
		java.lang.String depSlipNo);

	/**
	* Removes the bank_ payment_ slip with the primary key from the database. Also notifies the appropriate model listeners.
	*
	* @param depSlipNo the primary key of the bank_ payment_ slip to remove
	* @return the bank_ payment_ slip that was removed
	* @throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException if a bank_ payment_ slip with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip remove(
		java.lang.String depSlipNo)
		throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException,
			com.liferay.portal.kernel.exception.SystemException;

	public com.crossriver.crgis.database.model.Bank_Payment_Slip updateImpl(
		com.crossriver.crgis.database.model.Bank_Payment_Slip bank_Payment_Slip,
		boolean merge)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds the bank_ payment_ slip with the primary key or throws a {@link com.crossriver.crgis.database.NoSuchBank_Payment_SlipException} if it could not be found.
	*
	* @param depSlipNo the primary key of the bank_ payment_ slip to find
	* @return the bank_ payment_ slip
	* @throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException if a bank_ payment_ slip with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip findByPrimaryKey(
		java.lang.String depSlipNo)
		throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException,
			com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds the bank_ payment_ slip with the primary key or returns <code>null</code> if it could not be found.
	*
	* @param depSlipNo the primary key of the bank_ payment_ slip to find
	* @return the bank_ payment_ slip, or <code>null</code> if a bank_ payment_ slip with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip fetchByPrimaryKey(
		java.lang.String depSlipNo)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds all the bank_ payment_ slips where applicationId = &#63;.
	*
	* @param applicationId the application id to search with
	* @return the matching bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findByApplicationId(
		java.lang.String applicationId)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds a range of all the bank_ payment_ slips where applicationId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param applicationId the application id to search with
	* @param start the lower bound of the range of bank_ payment_ slips to return
	* @param end the upper bound of the range of bank_ payment_ slips to return (not inclusive)
	* @return the range of matching bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findByApplicationId(
		java.lang.String applicationId, int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds an ordered range of all the bank_ payment_ slips where applicationId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param applicationId the application id to search with
	* @param start the lower bound of the range of bank_ payment_ slips to return
	* @param end the upper bound of the range of bank_ payment_ slips to return (not inclusive)
	* @param orderByComparator the comparator to order the results by
	* @return the ordered range of matching bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findByApplicationId(
		java.lang.String applicationId, int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds the first bank_ payment_ slip in the ordered set where applicationId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param applicationId the application id to search with
	* @param orderByComparator the comparator to order the set by
	* @return the first matching bank_ payment_ slip
	* @throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException if a matching bank_ payment_ slip could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip findByApplicationId_First(
		java.lang.String applicationId,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException,
			com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds the last bank_ payment_ slip in the ordered set where applicationId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param applicationId the application id to search with
	* @param orderByComparator the comparator to order the set by
	* @return the last matching bank_ payment_ slip
	* @throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException if a matching bank_ payment_ slip could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip findByApplicationId_Last(
		java.lang.String applicationId,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException,
			com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds the bank_ payment_ slips before and after the current bank_ payment_ slip in the ordered set where applicationId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param depSlipNo the primary key of the current bank_ payment_ slip
	* @param applicationId the application id to search with
	* @param orderByComparator the comparator to order the set by
	* @return the previous, current, and next bank_ payment_ slip
	* @throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException if a bank_ payment_ slip with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip[] findByApplicationId_PrevAndNext(
		java.lang.String depSlipNo, java.lang.String applicationId,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException,
			com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds all the bank_ payment_ slips where userId = &#63;.
	*
	* @param userId the user id to search with
	* @return the matching bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findByUserId(
		java.lang.String userId)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds a range of all the bank_ payment_ slips where userId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param userId the user id to search with
	* @param start the lower bound of the range of bank_ payment_ slips to return
	* @param end the upper bound of the range of bank_ payment_ slips to return (not inclusive)
	* @return the range of matching bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findByUserId(
		java.lang.String userId, int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds an ordered range of all the bank_ payment_ slips where userId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param userId the user id to search with
	* @param start the lower bound of the range of bank_ payment_ slips to return
	* @param end the upper bound of the range of bank_ payment_ slips to return (not inclusive)
	* @param orderByComparator the comparator to order the results by
	* @return the ordered range of matching bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findByUserId(
		java.lang.String userId, int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds the first bank_ payment_ slip in the ordered set where userId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param userId the user id to search with
	* @param orderByComparator the comparator to order the set by
	* @return the first matching bank_ payment_ slip
	* @throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException if a matching bank_ payment_ slip could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip findByUserId_First(
		java.lang.String userId,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException,
			com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds the last bank_ payment_ slip in the ordered set where userId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param userId the user id to search with
	* @param orderByComparator the comparator to order the set by
	* @return the last matching bank_ payment_ slip
	* @throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException if a matching bank_ payment_ slip could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip findByUserId_Last(
		java.lang.String userId,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException,
			com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds the bank_ payment_ slips before and after the current bank_ payment_ slip in the ordered set where userId = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param depSlipNo the primary key of the current bank_ payment_ slip
	* @param userId the user id to search with
	* @param orderByComparator the comparator to order the set by
	* @return the previous, current, and next bank_ payment_ slip
	* @throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException if a bank_ payment_ slip with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public com.crossriver.crgis.database.model.Bank_Payment_Slip[] findByUserId_PrevAndNext(
		java.lang.String depSlipNo, java.lang.String userId,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.crossriver.crgis.database.NoSuchBank_Payment_SlipException,
			com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds all the bank_ payment_ slips.
	*
	* @return the bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findAll()
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds a range of all the bank_ payment_ slips.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param start the lower bound of the range of bank_ payment_ slips to return
	* @param end the upper bound of the range of bank_ payment_ slips to return (not inclusive)
	* @return the range of bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findAll(
		int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Finds an ordered range of all the bank_ payment_ slips.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param start the lower bound of the range of bank_ payment_ slips to return
	* @param end the upper bound of the range of bank_ payment_ slips to return (not inclusive)
	* @param orderByComparator the comparator to order the results by
	* @return the ordered range of bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public java.util.List<com.crossriver.crgis.database.model.Bank_Payment_Slip> findAll(
		int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Removes all the bank_ payment_ slips where applicationId = &#63; from the database.
	*
	* @param applicationId the application id to search with
	* @throws SystemException if a system exception occurred
	*/
	public void removeByApplicationId(java.lang.String applicationId)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Removes all the bank_ payment_ slips where userId = &#63; from the database.
	*
	* @param userId the user id to search with
	* @throws SystemException if a system exception occurred
	*/
	public void removeByUserId(java.lang.String userId)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Removes all the bank_ payment_ slips from the database.
	*
	* @throws SystemException if a system exception occurred
	*/
	public void removeAll()
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Counts all the bank_ payment_ slips where applicationId = &#63;.
	*
	* @param applicationId the application id to search with
	* @return the number of matching bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public int countByApplicationId(java.lang.String applicationId)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Counts all the bank_ payment_ slips where userId = &#63;.
	*
	* @param userId the user id to search with
	* @return the number of matching bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public int countByUserId(java.lang.String userId)
		throws com.liferay.portal.kernel.exception.SystemException;

	/**
	* Counts all the bank_ payment_ slips.
	*
	* @return the number of bank_ payment_ slips
	* @throws SystemException if a system exception occurred
	*/
	public int countAll()
		throws com.liferay.portal.kernel.exception.SystemException;
}